package controlador;

import java.util.List;

import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Longbox;
import org.zkoss.zul.Messagebox;
import org.zkoss.zul.Textbox;
import org.zkoss.zul.Window;
import modelo.hibernate.dao.DaoUsuario;
//import Modelo.Hibernate.Dao.DaoUsuario;
import modelo.entidad.TipoUsuario;
import modelo.entidad.Usuario;

public class ControladorRegistrarUsuario extends GenericForwardComposer<Window>{
	
	Usuario usu = new Usuario();
	private DaoUsuario dao = new DaoUsuario();
	//private UsuarioDaoAntiguo daoAnt = new UsuarioDaoAntiguo();
	
	private static final long serialVersionUID = 1L;
	
	@Wire
	private Textbox Nombre;
	@Wire
	private Textbox Apellido;
	@Wire
	private Textbox Cedula;
	@Wire
	private Longbox Telefono;
	@Wire
	private Textbox Correo;
	@Wire
	private Textbox Contrasenna;
	
	public void onClick$btnRegUsuario() throws Exception{
		if(Nombre.getText().equals("") || Apellido.getText().equals("") || Cedula.getText().equals("") ||
		    Telefono .getText().equals("") || Correo.getText().equals("") || Contrasenna.getText().equals("")){
			
			Messagebox.show("Ninguno de los Campos debe estar Vacio", "Error", Messagebox.OK, Messagebox.ERROR);
		}
		else{
			String email = Correo.getText();
			usu = dao.obtenerUsuario(email);
			if(usu!=null){
				Messagebox.show("Ese usuario ya se encuentran registrados", "Error", Messagebox.OK, Messagebox.ERROR);
				Cedula.setFocus(true);  //Focus
			}
			else{
				List<Usuario> aux = dao.obtenerTodos();
				Usuario nuevo = new Usuario();
				nuevo.setId(aux.size()+1);
				nuevo.setNombre(Nombre.getText());
				nuevo.setApellido(Apellido.getText());
				nuevo.setCedula(Cedula.getText());
				nuevo.setContrasena(Contrasenna.getText());
				nuevo.setEmail(Correo.getText());
				nuevo.setTelefono(Telefono.getText());
				nuevo.setEstatus("A");
				TipoUsuario tipo_usuario = new TipoUsuario();
				tipo_usuario.setId(2);
				tipo_usuario.setDescripcion("Vendedor");
				nuevo.setTipo_usuario(tipo_usuario);
//				daoAnt.agregarUsuario(usu);
				dao.agregarUsuario(nuevo);
				Messagebox.show("Usuario Registrado");
//			}
			
		}
	}
	
}
}

	
